home *** CD-ROM | disk | FTP | other *** search
- Bemerkungen zu GNUShell
- =======================
-
- Projektfiles
- ------------
- Die GNUShell Projektfiles sind in ihrer Syntax an die Projektfiles von
- Pure/Turbo C angelehnt:
-
- Projektfile ::= Target + Optionen + '=' + { Source }
-
- Target ::= 'Targetfilename'
-
- Optionen ::= (CompilerOption) + (AssemblerOption) + (LinkerOption)
-
- CompilerOption ::= '.C' + '[' + { GnuOption } + ']'
-
- AssemblerOption ::= '.S' + '[' + { GnuOption } + ']'
-
- LinkerOption ::= '.L' + '[' + { GnuOption } + ']'
-
- GNUOption :== '-' + TEXT
-
- Source ::= SourceFilename + (Abhängigkeit) + SourceOption
-
- SourceFilename ::= 'Filename'
-
- Abhängigkeit ::= '(' + 'Filename' + { ',' Filename } + ')'
-
- SourceOption ::= '[' + { GNUOption } + ']'
-
- Beispiel: Projektfile:
-
- Mit dem folgenden Projektfile wurde z.B. die GNUShell übersetzt:
-
- # =========================
- # Projektfile fuer GNUShell
- # =========================
- GNUSHELL.PRG
- .C
- [
- -c -O2 -ansi -mshort -D__TCC_COMPAT__
- -Wall
- -Wconversion
- -Wmissing-prototypes
- -pedantic
- ]
- =
- GNUALLOC.C
- GNUENV.C
- GNUERR.C
- GNUFILE.C
- GNUINFO.C
- GNULEX.C
- GNULOG.C
- GNUMAKE.C
- GNUMENU.C
- GNUPATH.C
- GNUPARSE.C
- GNUSHELL.C
- GNUSHOW.C
- GNUTEXT.C
- GEM16.OLB
- GNU16.OLB
-
- Weitere Bemerkungen
- -------------------
- Die Option ".C [-c]" sollte immer vorhanden sein.
-
- Eine laufende Compilation kann durch (wiederholten) Tastendruck abgebrochen
- werden. Dabei sollte nicht die Return-Taste verwendet werden, da eine
- Sicherheitsabfrage mit Defaultwert 'weiter' erfolgt.
-
- Registrierung
- -------------
- GNUShell ist Shareware. Bei regelm"assiger Benutzung sind die Anwender
- verpflichtet, die Sharewaregeb"uhr von DM/sFr 20.- an folgende Adresse
- zu entrichten:
-
- Roland Schäuble
- Dattikonstr. 2
- CH-8730 Uznach
- Tel. (055) 72 41 34
-
- Durch die Registrierung kommt der Anwender in den Genuss folgender
- Vorteile:
-
- Er wird von mir in die Liste der registrierten Anwender aufgenommen.
-
- Ein registrierter Anwender bekommt die zum Zeitpunkt der
- Registrierung aktuelle Version von GNUShell von mir zugesandt
-
- Zudem erhält er alle Sourcefiles und das Projektfile, mit dem
- GNUShell zusammengebaut werden kann (GNUShell kann sowohl mit dem GNU
- C-Compiler, wie auch mit Pure C übersetzt werden).
-
- Registrierte Anwender erhalten die Dokumentation zugesandt.
-
- Ein registrierter Anwender wird über (wesentliche) Neuerungen
- von GNUShell unterrichtet.
-
- Ein registrierter Anwender kann jederzeit gegen Einsendung einer
- Leerdiskette die aktuelle Version von GNUShell bei mir beziehen.
-
- Bei Fragen und Problemen stehe ich im Rahmen meiner
- Möglichkeiten zur Verfügung.
-
- Anregungen
- ----------
- Anregungen, Problemmeldungen und Verbesserungs- und Änderungswünsche
- bitte an folgende Adresse:
-
- Roland Schäuble
- Dattikonstr. 2
-
- CH-8730 Uznach
- eMail: CZSRO@zcvx00.decnet.ascom.ch
-
- Bei Problemen bitte immer Versionsnummer und Konfiguration angeben.
-
- History
- -------
- Version 1.1 2-Okt-1993
- Erste gültige Ausgabe.
-
- Version 1.2 10-Okt-1993
- Überprüfung, ob Inputfiles aus Abhängigkeitsliste vorhanden.
- Überprüfung, ob Sourcefile vorhanden.
- Korrektur Fehler, wenn GNUShell nicht auf gleichem Drive, wie Source.
- Neuer Menu-Eintrag "Edit .*".
- Fehlermeldung, wenn Projektfile nicht gefunden.
- Korrektur im Zusammenhang mit GDOS.
- Verbesserungen des Handling der Text-Windows.
-
- Version 1.3 4-Nov-1993
- Übergabe der Filenamen in Kleinschrift bei Option Compile...
- Damit wird "file.cxx" als C++-Source erkannt und nicht als Library.
-
- Version 1.4 18-Nov-1993
- Korrektur bei den Optionen "Compile" sowie "Compile & Link":
- Es wird jetzt -oFilename erzeugt und nicht mehr -o filename,
- was zu einem Fehler führte.
-
- Version 1.5 9-Dez-1993
- Sichern des Info-Files unter anderem Filenamen funktioniert jetzt.
- Erweiterung User-Environment-Variablen.
- Ausgaben des Compilers auf stdout werden jetzt auch in das
- Message-Window umgeleitet.
- Letzter Pfad und Name bei Execute und Delete wird behalten.
- Mehr Flexibilität bei der Konfiguration des Editors.
- Beim Editieren von Sourcefiles kann z.B. ein vorhandenes Messagefile in
- den 2. Buffer genommen werden.
- Aus .MSG-Files werden .LOG-Files.
- Verbesserte Behandlung des Logwindow-"Fullers".
- Im Infofile sind sowohl die Namen der Environmentvariablen zu sehen,
- wie auch die Definition.
-
- Version 1.6 15-Dez-1993
- Nach 'Execute' eines Programmes wird der Returnstatus angezeigt.
- Die Umleitung von stdout und stderr nach dem Compilieren oder
- Linken wird jetzt durch Schliessen von stdout und stderr
- rückgängig gemacht (funktioniert aber erst ab GEMDOS 0.15 korrekt).
- Infofile mit Namen versehen. Damit werden alte Info-Files nicht
- bei jeder Änderung der Struktur unbrauchbar.
- Beim 'Execute' eines TTP-Programmes können jetzt Parameter übergeben
- werden.
-
- Version 1.7 2-Jan-1994
- Fehler bei der Behandlung von Abhängigkeitslisten behoben. Der
- Datumsvergleich erfolgt jetzt zwischen dem Objektfile und dem File
- aus der Liste anstatt wie bisher zwischen dem Sourcefile und
- dem File aus der Liste.
- Das Logfile wird jetzt auf das Directory des Sourcefiles
- geschrieben, damit es der Editor immer finden kann.
- Weitere Probleme im Zusammenhang mit der Anzeige von Logfiles im
- Textwindow behoben.
- Neuer Menupunkt "Close Logwindows" eingeführt.
- Peinlicher Fehler beim Setup des Environments behoben, der zu einem
- Endlosloop nach Drücken von OK führte.
- Nebst %s und %l ist jetzt auch %n=Zeilennummer als Editorparameter
- einstellbar.
-
- Version 1.8 1-Mar-1994
- Logwindow wird bei Eröffnung nicht mehr 2 mal gezeichnet.
- Problem bei mehr als 7 Logwindows behoben.
- Korrekte Verarbeitung von Pfadnamen, die '.' beinhalten.
- Optimierung beim Zeichnen der Logwindows.
- Listenverarbeitung effizienter.
-
- Version 1.9 11-Apr-1994
- Fehler (GemDos Error 34) bei Compile & Link" bzw. "Link" von einem
- anderen Drive aus behoben.
-
- Version 2.0 29-Apr-1994
- Schwerer Memory-Fehler bei der Behandlung von Textwindows behoben
- (Wahrscheinlich Ursache für Probleme mit dem TT).
- Fehler beim Resize von Textwindows behoben.
- Abfrage bei "Quit" und Setup-Änderungen.
- Compilation der Shell jetzt auch mit -pedantic etc. möglich.
- GEMDOS-Fehlerprüfung erweitert.
-
- Version 2.1 15-Jun-1994
- Nur noch ein Logwindow mit allen Meldungen.
- Das Logwindow wird vor dem Start eines anderen Programmes
- geschlossen, damit wieder 7 Fenster "frei" sind.
- Der Menueintrag "Close Logwindows" entfällt.
- Weniger Speicherbedarf für das Logwindow.
- Möglichkeit, ein RCS (Resource Construction Set) einzubeziehen.
- Bei "Make all" werden nur noch diejenigen Files in der deleting...
- Box angezeigt, die tatsächlich vorhanden sind (und daher gelöscht
- werden).
- Als Argv-Parameter kann beim Starten ein Projektfile übergeben
- werden. Damit kann z.B. mit der Tera-Shell ein Projektfile auf
- GNUSHELL.PRG gezogen werden, womit es zum aktuellen Projektfile
- wird.
-
- Version 2.2 2-Jun-1994
- Files mit der Extention ".o" bzw ".O" im Projektfile werden jetzt
- korrekt behandelt, d.h. nur gelinkt und nicht mehr als Libraries
- angesehen.
-
-
- Bekannte Probleme:
- Welcher Pfad soll bei 'Execute' eingestellt werden?
- Zur Zeit ist es der Pfad des auszuführenden Programmes
- eingestellt. Damit können GEM-Programme ihre Resourcefiles finden.
- Andererseits ist dies z.B. für GNU Make ein Hinderniss.
-
- In Zukunft...
- ...Wäre es toll, wenn auf Doppelklick im Logwindow der Editor mit
- dem entsprechenden File auf der richtigen Linie gestartet werden
- könnte.
-
- ...Könnte vielleicht GNU MAKE als Alternatives Make angeboten werden.
- Das Problem dabei ist, dass GNUShell keine Kommandoshell zur
- Verfügung stellt. GNU MAKE ist aber auf eine solche angewiesen.
-
- ...Sollte es eine Möglichkeit geben, den GNU Debugger zu verwenden.
- Zum Debuggen muss zweimal mit verschiedenen Optionen
- gelinkt werden können.
-
-